Understanding Software Architectures: Tracing architectural knowledge in software architecture documentation

نویسنده

  • Jens Rasmussen
چکیده

Introduction " The reality is more excellent than the report. " – Ralph Waldo Emerson This thesis is about understanding software architecture documentation and how the integration of software architecture description and rationale can improve this understanding. Understanding software architecture (documentation) is important in the complete life cycle of a software architecture; during development, maintenance and evolution. Understanding the documentation of a software architecture is difficult. A description of the design of a software architecture is far from enough to make it understandable. A description does not answer why a design is done as it is, or how the software architecture arrived at the present design. To understand a software architecture, one must know and understand the reasoning behind the design, i.e. the rationale, and how architectural artifacts are related. Research in software architecture can be seen in two perspectives: a traditional and modern one. The traditional perspective describes the design of a software architecture in terms of components and connectors and how these are arranged. The second, more recent one describes software architecture in terms of the decisions and rationale that led up to the software architecture. Research and practice so far have been confined within these perspectives, but an integration of the traditional and modern perspectives to describe software architecture promises to solve some of the problems of software architecture. Figure 1 illustrates these two perspectives. Both perspectives are about representing architectural knowledge, which is done in either a non-formalized or a formalized approach. The research areas that result from this subdivision are traditional software architecture documentation, modeling of software architectures, templates for capturing architectural decisions, and ontologies for representing architectural knowledge. This thesis will analyze the problems of understandability in these areas except modeling of software architectures, because this area is not relevant for documentation of software architecture. The focus lies on how understandability of software architecture documentation can be improved by integrating it with rationale. The remainder of this chapter gives a short introduction to the traditional and modern perspectives on software architecture description and rationale. This is followed by a section on how an integration of these perspectives promises to solve some

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Fuzzy based Quantitative Evaluation of Architectures using Architectural Knowledge

Software architecture is a standard and essential part of system development. The knowledge produced and consumed during this process needs to be shared and reused among different stakeholders. Therefore, software architecture knowledge (AK) needs to be managed for improving the architectural capabilities. ADUAK (Architectural Development using Architectural Knowledge) model has been developed ...

متن کامل

An Approach for Capturing and Documenting Architectural Decisions of Reference Architectures

During the design of software architectures of software systems, it is widely known the relevance of capturing and documenting architectural decisions, i.e., reasons, implications, justification, and trade-offs related to choices made in these architectures. Therefore, it is possible to achieve a more complete documentation of software architectures that also contributes to the success of the s...

متن کامل

Viability for codifying and documenting architectural design decisions with tool support

Current software architecture practices have been focused on modeling and documenting the architecture of a software system by means of several architectural views. In practice, the standard architecture documentation lacks explicit description of the decisions made and their underlying rationale, which often leads to knowledge loss. This fact strongly affects the maintenance activities as we n...

متن کامل

Two controlled experiments on model-based architectural decision making

Context: In recent years, architectural design decisions are becoming more and more common for documenting software architectures. Rather than describing the structure of software systems, architectural decisions capture the design rationale and – often reusable – architectural knowledge. Many approaches and tools have been proposed in the literature to support architectural decision making and...

متن کامل

Documenting after the fact: Recovering architectural design decisions

Software architecture documentation helps people in understanding the software architecture of a system. In practice, software architectures are often documented after the fact, i.e. they are maintained or created after most of the design decisions have been made and implemented. To keep the architecture documentation up-to-date an architect needs to recover and describe these decisions. This p...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2008